package at.ac.uniklu.rallyemaster.domain;

import java.util.Date;


public class TrackingPoint{
	
	public static final int CURVE_LEFT = -1;
	public static final int CURVE_RIGHT = 0;
	
	private int id;
	private Double longitude;
	private Double latitude;
	private double distance;
	private String notes; 
	private double avgSpeed;
	private double currentSpeed; 
	private Date time;
	private boolean curve;
	private int curveIntension;
	private int curveDirection;
	private int trackId;
	
	
	public TrackingPoint(){
		id = -1;
		longitude = 0.0;
		latitude = 0.0; 
		distance = 0.0;
		notes = ""; 
		avgSpeed = 0.0; 
		currentSpeed = 0.0;
		time = new Date(0);
		curve = false;
		curveIntension = 0;
		curveDirection = 0;
		trackId = -1;
		
	}
	public TrackingPoint(int id, Double longitude, Double latitude, double distance, String notes, double avgSpeed, double currentSpeed, Date time, boolean curve, int curveDirection, int curveIntension){
		this.id = id;
		this.longitude= longitude;
		this.latitude = latitude; 
		this.distance = distance;
		this.notes = notes; 
		this.avgSpeed = avgSpeed; 
		this.currentSpeed = currentSpeed;
		this.time = time;
		this.curve = curve; 
		this.curveDirection = curveDirection;
		this.curveIntension = curveIntension;
	}
	

	@Override
	public String toString() {
		return "TrackingPoint [avgSpeed=" + avgSpeed + ", currentSpeed="
				+ currentSpeed + ", curve=" + curve + ", curveDirection="
				+ curveDirection + ", curveIntension=" + curveIntension
				+ ", distance=" + distance + ", id=" + id + ", latitude="
				+ latitude + ", longitude=" + longitude + ", notes=" + notes
				+ ", time=" + time + ", trackId=" + trackId + "]";
	}
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public Double getLongitude() {
		return longitude;
	}
	public void setLongitude(Double longitude) {
		this.longitude = longitude;
	}
	public double getDistance() {
		return distance;
	}
	public void setDistance(double distance) {
		this.distance = distance;
	}
	public Double getLatitude() {
		return latitude;
	}
	public void setLatitude(Double latitude) {
		this.latitude = latitude;
	}
	public String getNotes() {
		return notes;
	}
	public void setNotes(String notes) {
		this.notes = notes;
	}
	public double getAvgSpeed() {
		return avgSpeed;
	}
	public void setAvgSpeed(double avgSpeed) {
		this.avgSpeed = avgSpeed;
	}
	public double getCurrentSpeed() {
		return currentSpeed;
	}
	public void setCurrentSpeed(double currentSpeed) {
		this.currentSpeed = currentSpeed;
	}
	public Date getTime() {
		return time;
	}
	public void setTime(Date time) {
		this.time = time;
	}
	public boolean getCurve() {
		return curve;
	}
	public void setCurve(boolean curve) {
		this.curve = curve;
	}
	public int getCurveDirection() {
		return curveDirection;
	}
	public void setCurveDirection(int curveDirection) {
		this.curveDirection = curveDirection;
	}
	public int getCurveIntension() {
		return curveIntension;
	}
	public void setCurveIntension(int curveIntension) {
		this.curveIntension = curveIntension;
	}
	public int getTrackId() {
		return trackId;
	}
	public void setTrackId(int trackId) {
		this.trackId = trackId;
	}
	
	
	
	

}
